草庐IT

c++ - Swig -includeall 除了...

全部标签

c++ - 如何让 FindFirstFile 对文件进行排序

我正在使用标准的FindFirst和FindNext来检索目录中的所有文件但我需要对结果进行排序(按照与在资源管理器中单击名称列基本排序相同的顺序)我怎样才能做到这一点这必须通过Win32完成谢谢 最佳答案 您可以使用IndexingService为此,但我建议您在使用FindFirstFile时自己处理排序。无法使用FindFirstFileWin32API进行排序。有稍微高级一点的FindFirstFileEx,但即使这样也不允许排序。有个陈峰postonTheOldNewThingaboutFindFirstFile'slim

c++ - 在 C++ 中初始化数组

我看到的每个地方都有人大声争论未初始化的变量是不好的,我当然同意并理解为什么——但是;我的问题是,是否存在您不想这样做的情况?例如取代码:chararrBuffer[1024]={'\0'};将整个数组设为NULL是否会对性能产生影响,而不是使用数组而不初始化它? 最佳答案 我假定堆栈初始化,因为静态数组是自动初始化的。G++输出charwhatever[2567]={'\0'};8048530:8d95f5f5fffflea-0xa0b(%ebp),%edx8048536:b8070a0000mov$0xa07,%eax80485

c++ - 从 float 转换为 QByteArray

在QByteArray中,是否有快速的方法将浮点值转换为字节方式(十六进制)表示形式?在使用数组之前用memcpy()做了类似的事情,但这似乎不太适用于QByteArray。例如:memcpy(&byteArrayData,&floatData,sizeof(float));可以用另一种方式很好地使用:float*value=(float*)byteArrayData.data();我只是实现了这个错误还是有更好的方法使用Qt来实现?谢谢 最佳答案 来自QByteArrayClassReference页:floatf=0.0f;QB

c++ - 返回字符数组求和的结果

最近在一次采访中,我被问到一个问题,要编写一个将两个字符数组(整数)作为输入并返回输出字符数组的函数。函数签名:char*find_sum(char*a,char*b)如何解决这个问题?示例场景:find_sum("12345","32142")="44487"注意:位数可以很多(1-100)。 最佳答案 您可以使用字符数组方法添加大量数字。但是你需要在每次使用后删除char*或使用一些智能指针。char*find_sum(char*a,char*b){intlenA=strlen(a),lenB=strlen(b);intmax=

c++ - 有人在处理 2038 time_t 错误吗?

这个问题在这里已经有了答案:关闭12年前。PossibleDuplicate:Whatshouldwedotopreparefor2038?我指的不是抽象的“人”。我的意思是你正在做任何事情吗?如果是的话是什么?我是一名古老的程序员,记得我在70年代后期编写COBOL时对我团队中的其他人说“你知道-这在2000年是行不通的”。对此的答复是“是的,但到那时该系统不会被使用,那是25年之后”。2038年还有28年。

c++ - 使 char 函数参数为 const?

考虑这个函数声明:intIndexOf(constchar*,char);其中char*是一个字符串,char是要在字符串中查找的字符(如果未找到char则返回-1,否则返回其位置)。使char也const有意义吗?我总是尝试在指针参数上使用const,但当按值调用某些内容时,我通常会不使用const。你有什么想法? 最佳答案 假设您不打算调整任一参数的值:我会将函数定义为:intIndexOf(constchar*const,constchar){//...}但保留函数声明为:intIndexOf(constchar*,char)

c++ - C 到 C++ : Transitioning from one language to the other

这个问题在这里已经有了答案:关闭11年前。PossibleDuplicate:C++tutorialforexperiencedCprogrammer.我经常使用多种语言进行编程,最近一直在使用C++。基本上我的类只是对纯C代码的包装。几乎就像一个带有关联方法的结构。这为我的数据提供了我想要的封装和隐私。我有一个小的类层次结构,几乎没有使用继承。我熟悉面向对象的概念,并且知道当我需要了解这方面的特定概念时可以使用哪些搜索词。然而,正如我在编程世界中的尝试所发现的那样,通常真正有用的语言特性对新手或新手来说是隐藏的,而我需要的有用的部分已经写好了并且在某个地方的库中可以免费使用可用(大多

c++ - 使用 %s 格式化时 # 的作用是什么

我遇到了这个断言示例,想知道#的用途:#defineASSERT(x)if(!(x)){\int*p=NULL;\DBGPRINTF("Assertfailed:[%s]\r\nHalting.",#x);\*p=1;\} 最佳答案 它是“stringize”预处理操作符。它将标记作为参数传递给宏参数x并将它们转换为字符串文字。#defineASSERT(x)#xASSERT(abcd)//isreplacedby"abcd" 关于c++-使用%s格式化时#的作用是什么,我们在Stack

c++ - C、C++ 与 Python 的接口(interface)

我的C++代码呈指数级增长。每次运行我的代码(不同的运行条件)时,我有许多变量(主要是bool值)需要更改。过去,我使用main(intargc,char*argv[])函数的参数命令行输入完成了此操作。由于这种方法变得很麻烦(我有18种不同的运行条件,因此有18个不同的参数:-(),我想转向与python的接口(interface)(如果需要的话Bash)。理想情况下,我想编写一个python脚本,我在其中设置数据成员的值,然后运行代码。有没有人有任何指示/信息可以帮助我?更好的是我可以查找的简单编码示例或URL。从原始问题编辑:抱歉,我认为我的问题不清楚。我不想在C++中使用mai

c++ - 在 C++ 中隐藏黑色窗口

这个问题在这里已经有了答案:关闭10年前。PossibleDuplicate:CreateanApplicationwithoutaWindowWin32programminghidingconsolewindow如何隐藏运行C++程序时出现的控制台窗口?该程序不会向stdout输出任何内容,并且我不需要每次运行该程序时都出现该黑色窗口。我不希望它被最小化我希望它不可见。有什么想法吗?